export default {
  install(Vue) {
    // 定义过滤器(全局)
    Vue.filter("mySlice", function (value) {
      return value.slice(0, 2);
    });

    // 定义指令(全局)
    Vue.directive("fBind", {
      //指令与元素成功绑定时(一上来)
      bind(element, binding) {
        element.value = binding.value;
      },
      //指令所在元素被插入页面时
      inserted(element) {
        element.focus();
      },
      //指令所在的模板被重新解析时
      update(element, binding) {
        element.value = binding.value;
      },
    });

    // 定义混入(全局)
    Vue.mixin({
      data() {
        return {
          x: 100,
          y: 200,
        };
      },
    });

    // 给Vue原型上添加一个方法(vm 和 vc就都能用了)
    Vue.prototype.hello = () => {
      alert("你好呀");
    };
  },
};
